↳ PROLOG
↳ PrologToPiTRSProof
With regard to the inferred argument filtering the predicates were used in the following modes:
f3: (b,f,f)
Transforming PROLOG into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:
f_3_in_gaa3(0_0, Y, 0_0) -> f_3_out_gaa3(0_0, Y, 0_0)
f_3_in_gaa3(s_11(X), Y, Z) -> if_f_3_in_1_gaa4(X, Y, Z, f_3_in_gaa3(X, Y, U))
if_f_3_in_1_gaa4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> if_f_3_in_2_gaa5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
if_f_3_in_2_gaa5(X, Y, Z, U, f_3_out_gaa3(U, Y, Z)) -> f_3_out_gaa3(s_11(X), Y, Z)
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of PROLOG
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
f_3_in_gaa3(0_0, Y, 0_0) -> f_3_out_gaa3(0_0, Y, 0_0)
f_3_in_gaa3(s_11(X), Y, Z) -> if_f_3_in_1_gaa4(X, Y, Z, f_3_in_gaa3(X, Y, U))
if_f_3_in_1_gaa4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> if_f_3_in_2_gaa5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
if_f_3_in_2_gaa5(X, Y, Z, U, f_3_out_gaa3(U, Y, Z)) -> f_3_out_gaa3(s_11(X), Y, Z)
F_3_IN_GAA3(s_11(X), Y, Z) -> IF_F_3_IN_1_GAA4(X, Y, Z, f_3_in_gaa3(X, Y, U))
F_3_IN_GAA3(s_11(X), Y, Z) -> F_3_IN_GAA3(X, Y, U)
IF_F_3_IN_1_GAA4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> IF_F_3_IN_2_GAA5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
IF_F_3_IN_1_GAA4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> F_3_IN_GAA3(U, Y, Z)
f_3_in_gaa3(0_0, Y, 0_0) -> f_3_out_gaa3(0_0, Y, 0_0)
f_3_in_gaa3(s_11(X), Y, Z) -> if_f_3_in_1_gaa4(X, Y, Z, f_3_in_gaa3(X, Y, U))
if_f_3_in_1_gaa4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> if_f_3_in_2_gaa5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
if_f_3_in_2_gaa5(X, Y, Z, U, f_3_out_gaa3(U, Y, Z)) -> f_3_out_gaa3(s_11(X), Y, Z)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
F_3_IN_GAA3(s_11(X), Y, Z) -> IF_F_3_IN_1_GAA4(X, Y, Z, f_3_in_gaa3(X, Y, U))
F_3_IN_GAA3(s_11(X), Y, Z) -> F_3_IN_GAA3(X, Y, U)
IF_F_3_IN_1_GAA4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> IF_F_3_IN_2_GAA5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
IF_F_3_IN_1_GAA4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> F_3_IN_GAA3(U, Y, Z)
f_3_in_gaa3(0_0, Y, 0_0) -> f_3_out_gaa3(0_0, Y, 0_0)
f_3_in_gaa3(s_11(X), Y, Z) -> if_f_3_in_1_gaa4(X, Y, Z, f_3_in_gaa3(X, Y, U))
if_f_3_in_1_gaa4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> if_f_3_in_2_gaa5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
if_f_3_in_2_gaa5(X, Y, Z, U, f_3_out_gaa3(U, Y, Z)) -> f_3_out_gaa3(s_11(X), Y, Z)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
IF_F_3_IN_1_GAA4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> F_3_IN_GAA3(U, Y, Z)
F_3_IN_GAA3(s_11(X), Y, Z) -> F_3_IN_GAA3(X, Y, U)
F_3_IN_GAA3(s_11(X), Y, Z) -> IF_F_3_IN_1_GAA4(X, Y, Z, f_3_in_gaa3(X, Y, U))
f_3_in_gaa3(0_0, Y, 0_0) -> f_3_out_gaa3(0_0, Y, 0_0)
f_3_in_gaa3(s_11(X), Y, Z) -> if_f_3_in_1_gaa4(X, Y, Z, f_3_in_gaa3(X, Y, U))
if_f_3_in_1_gaa4(X, Y, Z, f_3_out_gaa3(X, Y, U)) -> if_f_3_in_2_gaa5(X, Y, Z, U, f_3_in_gaa3(U, Y, Z))
if_f_3_in_2_gaa5(X, Y, Z, U, f_3_out_gaa3(U, Y, Z)) -> f_3_out_gaa3(s_11(X), Y, Z)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ RuleRemovalProof
IF_F_3_IN_1_GAA1(f_3_out_gaa1(U)) -> F_3_IN_GAA1(U)
F_3_IN_GAA1(s_11(X)) -> F_3_IN_GAA1(X)
F_3_IN_GAA1(s_11(X)) -> IF_F_3_IN_1_GAA1(f_3_in_gaa1(X))
f_3_in_gaa1(0_0) -> f_3_out_gaa1(0_0)
f_3_in_gaa1(s_11(X)) -> if_f_3_in_1_gaa1(f_3_in_gaa1(X))
if_f_3_in_1_gaa1(f_3_out_gaa1(U)) -> if_f_3_in_2_gaa1(f_3_in_gaa1(U))
if_f_3_in_2_gaa1(f_3_out_gaa1(Z)) -> f_3_out_gaa1(Z)
f_3_in_gaa1(x0)
if_f_3_in_1_gaa1(x0)
if_f_3_in_2_gaa1(x0)
IF_F_3_IN_1_GAA1(f_3_out_gaa1(U)) -> F_3_IN_GAA1(U)
f_3_in_gaa1(0_0) -> f_3_out_gaa1(0_0)
if_f_3_in_1_gaa1(f_3_out_gaa1(U)) -> if_f_3_in_2_gaa1(f_3_in_gaa1(U))
POL(0_0) = 2
POL(if_f_3_in_1_gaa1(x1)) = 2·x1
POL(f_3_out_gaa1(x1)) = 1 + x1
POL(F_3_IN_GAA1(x1)) = x1
POL(s_11(x1)) = 2·x1
POL(IF_F_3_IN_1_GAA1(x1)) = x1
POL(f_3_in_gaa1(x1)) = 2·x1
POL(if_f_3_in_2_gaa1(x1)) = x1
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ RuleRemovalProof
↳ QDP
↳ UsableRulesProof
F_3_IN_GAA1(s_11(X)) -> F_3_IN_GAA1(X)
F_3_IN_GAA1(s_11(X)) -> IF_F_3_IN_1_GAA1(f_3_in_gaa1(X))
f_3_in_gaa1(s_11(X)) -> if_f_3_in_1_gaa1(f_3_in_gaa1(X))
if_f_3_in_2_gaa1(f_3_out_gaa1(Z)) -> f_3_out_gaa1(Z)
f_3_in_gaa1(x0)
if_f_3_in_1_gaa1(x0)
if_f_3_in_2_gaa1(x0)
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ RuleRemovalProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ RuleRemovalProof
F_3_IN_GAA1(s_11(X)) -> F_3_IN_GAA1(X)
F_3_IN_GAA1(s_11(X)) -> IF_F_3_IN_1_GAA1(f_3_in_gaa1(X))
f_3_in_gaa1(s_11(X)) -> if_f_3_in_1_gaa1(f_3_in_gaa1(X))
f_3_in_gaa1(x0)
if_f_3_in_1_gaa1(x0)
if_f_3_in_2_gaa1(x0)
F_3_IN_GAA1(s_11(X)) -> F_3_IN_GAA1(X)
F_3_IN_GAA1(s_11(X)) -> IF_F_3_IN_1_GAA1(f_3_in_gaa1(X))
f_3_in_gaa1(s_11(X)) -> if_f_3_in_1_gaa1(f_3_in_gaa1(X))
POL(if_f_3_in_1_gaa1(x1)) = 1 + x1
POL(F_3_IN_GAA1(x1)) = x1
POL(s_11(x1)) = 2 + x1
POL(IF_F_3_IN_1_GAA1(x1)) = x1
POL(f_3_in_gaa1(x1)) = 1 + x1
↳ PROLOG
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ RuleRemovalProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ RuleRemovalProof
↳ QDP
↳ PisEmptyProof
f_3_in_gaa1(x0)
if_f_3_in_1_gaa1(x0)
if_f_3_in_2_gaa1(x0)